home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / input.sub < prev    next >
Text File  |  1984-07-17  |  2KB  |  33 lines

  1. 0 '===START OF FILE===59000 '************************************************************************
  2. 59010 '******************** INPUT SUBROUTINE STARTS HERE **********************
  3. 59020 '************************************************************************
  4. 59030 CURSOR = 0
  5. 59040 START = 0
  6. 59050 SSTOP = 0
  7. 59060 CHARACTER = 254
  8. 59070 ON ERROR GOTO 59260
  9. 59080 BUFFER$ = "": IF DATE THEN LENGTH = 8 : NUMERIC = 1
  10. 59090 LOCATE ROW,COLUMN,CURSOR,START,SSTOP: IF PRIVATE THEN PRINT STRING$(LENGTH,CHARACTER); : ELSE PRINT BUFFER$ + STRING$(LENGTH-LEN(BUFFER$),CHARACTER);
  11. 59100 LOCATE ROW,COLUMN+LEN(BUFFER$),CURSOR,START,SSTOP
  12. 59110 A$ = INKEY$ : IF A$ = "" THEN 59110 ELSE A=ASC(A$) ELSE IF LEN(A$)=2 THEN 59200
  13. 59120 IF A=8 AND DATE<>1 OR A=8 AND DATE=1 AND LEN(BUFFER$)=1 OR A=8 AND DATE=1 AND LEN(BUFFER$)=4 OR A=8 AND DATE=1 AND LEN(BUFFER$)=7 OR A<>8 THEN 59130 ELSE BUFFER$=LEFT$(BUFFER$,LEN(BUFFER$)-2):GOTO 59090
  14. 59130 IF A<>8 THEN 59140 ELSE BUFFER$=LEFT$(BUFFER$,LEN(BUFFER$)-1):GOTO 59090
  15. 59140 IF A<>13 AND LEN(BUFFER$) = LENGTH THEN BEEP:GOTO 59110
  16. 59150 IF A=13 THEN 59270
  17. 59160 IF NUMERIC THEN IF A>46 AND A<58 AND A<>47 THEN BUFFER$ = BUFFER$ + A$ : IF DATE THEN IF LEN(BUFFER$) = 2 OR LEN(BUFFER$) = 5 THEN BUFFER$ = BUFFER$ + "/" : GOTO 59090 : ELSE GOTO 59090 : ELSE GOTO 59090 : ELSE GOTO 59090
  18. 59170 IF A>96 AND A<123 THEN A=ASC(A$)-32 : A$=CHR$(A)
  19. 59180 IF A>31 AND A<127 THEN BUFFER$=BUFFER$ + A$ : GOTO 59090 ELSE GOTO 59090
  20. 59190 '************************************************************************
  21. 59200 'This section may be used to check for extended code keys.
  22. 59210 'See Extended Codes in Appendixes G of the BASIC Manual.
  23. 59220 'To get the second byte in A$ use "A = ASC(RIGHT$(A$,1))".
  24. 59230 '
  25. 59240 GOTO 59090
  26. 59250 '************************************************************************
  27. 59260 BEEP:RESUME 59090:
  28. 59270 'on error goto 0
  29. 59280 DEF SEG=0  'Line 1230 normalizes the cursor for either display adapter
  30. 59290 IF (PEEK(1040) AND 48)=48 THEN LOCATE ,,,12,13 ELSE LOCATE ,,,7,7
  31. 59300 DEF SEG
  32. 59310 PRIVATE=0:NUMERIC=0:DATE=0:ON ERROR GOTO 62000:RETURN
  33. 65529 '===END OF FILE===2,13 ELSE LOC